package com.thb.pay.system.service;

import com.thb.pay.api.sys.vo.req.SysUserPageReq;
import com.thb.pay.api.sys.vo.req.SysUserReq;
import com.thb.pay.api.sys.vo.resp.SysUserVo;
import com.thb.pay.core.utils.PageResult;
import com.thb.pay.db.service.IBaseService;
import com.thb.pay.system.entity.SysUser;

import java.util.List;

/**
 * <p>
 * 系统-用户表 服务类
 * </p>
 *
 * @author lucky
 * @since 2019-07-21
 */
public interface SysUserService extends IBaseService<SysUser> {

    /**
     * @param pageReq 分页参数
     * @Description 分页-系统用户-信息
     * @Author lucky
     * @data 2019/7/21 22:10
     */
    PageResult<SysUserVo> findPage(SysUserPageReq pageReq);

    void add(SysUserReq sysUserReq);

    void update(SysUserReq sysUserReq);

    SysUserVo getByUserId(Long userId);

    SysUserVo getByUserName(String userName);


    void deleteBatchIds(List<Long> userIds);

    /**
     * @param userId  用户Id
     * @param roleIds 角色Id集合
     * @Description 保存用户-角色关系
     * @Author lucky
     * @data 2019/7/21 22:10
     */
    void addRoleIdListByUserId(Long userId, List<Long> roleIds);
}
